Skip to content

Puppeteer 部署

标签
云服务器
运维
远程控制
字数
488 字
阅读时间
2 分钟

要在云服务器上运行 Headless Chromium 并暴露 browserWSEndpoint,您可以按照以下步骤进行操作:

  1. 安装 Chromium 和 Puppeteer: 在您的云服务器上安装 Chromium 和 Puppeteer,您可以使用以下命令在 Linux 环境中进行安装:

    bash
    sudo apt-get update
    sudo apt-get install -y chromium-browser
    npm install puppeteer

    如果您使用的是其他 Linux 发行版,可以根据其包管理器进行安装。

  2. 编写一个 Node.js 脚本: 创建一个 Node.js 脚本,该脚本将启动 Headless Chromium 并暴露 browserWSEndpoint。以下是一个简单的示例脚本,您可以根据需要进行修改:

    javascript
    const puppeteer = require('puppeteer');
    
    (async () => {
      const browser = await puppeteer.launch({ headless: true });
      const browserWSEndpoint = browser.wsEndpoint();
    
      console.log(`Chromium is running at: ${browserWSEndpoint}`);
    
      // 在此处执行其他任务或监听端口等等
    
      // 关闭 Chromium 连接
      await browser.close();
    })();

    这个脚本将启动 Headless Chromium,并在控制台输出 browserWSEndpoint。您可以在此脚本中执行其他任务,例如监听端口并响应远程请求。

  3. 运行脚本: 在命令行中运行该 Node.js 脚本。执行以下命令:

    bash
    node your-script.js

    此时,脚本将启动 Chromium 并输出 WebSocket 端点地址,该地址类似于 ws://127.0.0.1:9222/devtools/browser/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx。您可以将这个地址用于远程控制 Chromium。

  4. 远程控制 Chromium: 您可以在本地或其他服务器上的 Node.js 程序中使用 puppeteer.connect 方法连接到暴露的 WebSocket 端点,以远程控制 Chromium。确保您的远程程序能够访问服务器上运行的 Node.js 脚本的地址。

这样,您就可以在云服务器上运行 Headless Chromium 并暴露 browserWSEndpoint,以便在需要时远程控制 Chromium。请注意,根据您的需求和用例,您可能需要增加适当的安全措施,以确保仅受信任的用户可以访问和控制 Chromium。

贡献者

页面历史